/**
 * @file stack.h
 * Criar, inserir, retirar da pilha de method_frames e testar se está vazia.
 */

#ifndef _STACK_H_
#define _STACK_H_

#include "common.h"

/* funcoes de pilha */

/*inicializa pilha*/
stack *new_stack(void);

/*verifica se pilha esta vazia*/
int empty_stack(stack *p);

/*insere elemento na pilha*/
void push_stack(stack *p, method_frame *frame);

/*remove elemente da pilha*/
void pop_stack(stack *p);

/*verifica se pilha esta vazia*/
void free_stack(stack *p);

#endif
